home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Utilities Professional 1-1500
/
Utilities Professional 1-1500 (1994)(WPD)[!].iso
/
12511500
/
var1432.dms
/
var1432.adf
/
NDUK-V40.lha
/
V40
/
include
/
resources
/
card.i
< prev
next >
Wrap
Text File
|
1993-10-15
|
6KB
|
225 lines
IFND RESOURCES_CARD_I
RESOURCES_CARD_I SET 1
**
** $VER: card.i 1.8 (30.11.92)
** Includes Release 40.15
**
** card.resource include file
**
** (C) Copyright 1991-1993 Commodore-Amiga, Inc.
** All Rights Reserved
**
**
**
IFND EXEC_TYPES_I
INCLUDE "exec/types.i"
ENDC
IFND EXEC_NODES_I
INCLUDE "exec/nodes.i"
ENDC
* Macro - card resource name
CARDRESNAME MACRO
dc.b 'card.resource',0
ds.w 0
ENDM
* Structures used by the card.resource
STRUCTURE CardHandle,0
STRUCT cah_CardNode,LN_SIZE
APTR cah_CardRemoved
APTR cah_CardInserted
APTR cah_CardStatus
UBYTE cah_CardFlags
ALIGNWORD
LABEL CardHandle_SIZEOF
STRUCTURE DeviceTData,0
ULONG dtd_DTsize ;Size of card (bytes)
ULONG dtd_DTspeed ;Speed of card in nanoseconds
UBYTE dtd_DTtype ;Type of card
UBYTE dtd_DTflags ;other flags
ALIGNWORD
LABEL DeviceTData_SIZEOF
STRUCTURE CardMemoryMap,0
APTR cmm_CommonMemory
APTR cmm_AttributeMemory
APTR cmm_IOMemory
* Extended for V39 - These are the size of the memory spaces above
ULONG cmm_CommonMemSize;
ULONG cmm_AttributeMemSize;
ULONG cmm_IOMemSize;
LABEL CardMemoryMap_SIZEOF
* CardHandle.cah_CardFlags for OwnCard() function
; The CARDB_RESETREMOVE flag means you want the machine to
; perform a HARDWARE RESET if the card in the credit-card slot is
; removed while you own the CardSemaphore.
BITDEF CARD,RESETREMOVE,0 ;Hardware reset on card remove
; The CARDB_IFAVAILABLE flag means you only want your CardHandle
; structure enqueued IF the credit card can be owned immediately.
BITDEF CARD,IFAVAILABLE,1
; The CARDB_DELAYOWNERSHIP flag means you never want a successful
; return from OwnCard() even if the credit-card is available. Rather
; you will be notified of ownership via your cah_CardInserted
; interrupt vector.
BITDEF CARD,DELAYOWNERSHIP,2
; The CARDB_POSTSTATUS flag is new for card.resource V39 (check
; VERSION in resource base before using). It tells the resource
; that you want your Status Change Interrupt (if provided) to
; be called twice in a row. See OwnCard() for details.
;
BITDEF CARD,POSTSTATUS,3
* ReleaseCard() function flags
; The CARDB_REMOVEHANDLE flag means you want to remove your
; CardHandle structure from the list of CardHandle structures
; whether or not you own the credit-card in the slot.
BITDEF CARD,REMOVEHANDLE,0
* ReadStatus() return flags
BITDEF CARD_STATUS,CCDET,6 ; Credit CARD_STATUS detect (1 == detected)
BITDEF CARD_STATUS,BVD1,5 ; Battery Voltage Detect 1
BITDEF CARD_STATUS,SC,5 ; Credit-CARD_STATUS (internal) status change
BITDEF CARD_STATUS,BVD2,4 ; Battery Voltage Detect 2
BITDEF CARD_STATUS,DA,4 ; Digital audio
BITDEF CARD_STATUS,WR,3 ; Write enable (1 == enabled)
BITDEF CARD_STATUS,BSY,2 ; Credit CARD_STATUS Busy
BITDEF CARD_STATUS,IRQ,2 ; Interrupt request
* CardProgramVoltage() defines
CARD_VOLTAGE_0V EQU 0 ; Set to default; maybe the same as 5V
CARD_VOLTAGE_5V EQU 1
CARD_VOLTAGE_12V EQU 2
* CardMiscControl() defines
BITDEF CARD_ENABLE,DIGAUDIO,1
BITDEF CARD_DISABLE,WP,3
* New CardMiscControl() bits for V39 card.resource. Use these bits to set,
* or clear status change interrupts for BVD1/SC, BVD2/DA, and BSY/IRQ.
* Write-enable/protect change interrupts are always enabled. The defaults
* are unchanged (BVD1/SC is enabled, BVD2/DA is disabled, and BSY/IRQ is enabled)
*
* IMPORTANT -- Only set these bits for V39 card.resource or greater (check
* resource base VERSION)
*
BITDEF CARD_INT,SETCLR,7
BITDEF CARD_INT,BVD1,5
BITDEF CARD_INT,SC,5
BITDEF CARD_INT,BVD2,4
BITDEF CARD_INT,DA,4
BITDEF CARD_INT,BSY,2
BITDEF CARD_INT,IRQ,2
* CardInterface() defines
CARD_INTERFACE_AMIGA_0 EQU 0
* Tuple for Amiga execute-in-place software (e.g., games, or other
* such software which want to use execute-in-place software stored
* on a credit-card, such as a ROM card).
*
* See documentation for IfAmigaXIP().
CISTPL_AMIGAXIP EQU $91 ;Tuple code
STRUCTURE TP_AmigaXIP,0
STRUCT tp_AmigaXIP,2
STRUCT TP_XIPLOC,4
STRUCT TP_XIPFLAGS,1
STRUCT TP_XIPRESRV,1
LABEL TP_AmigaXIP_SIZEOF
*------ TP_BOOTFLAGS --------------------------------------------
; The XIPFLAGF_AUTORUN bit means that you want the machine
; to perform a reset if the execute-in-place card is inserted
; after DOS has been started. The machine will then reset,
; and execute your execute-in-place code the next time around.
;
; NOTE -- this flag may be ignored on some machines, in which
; case the user will have to manually reset the machine in the
; usual way.
BITDEF XIPFLAG,AUTORUN,0
*------- For assembly modules to use if amiga.lib has not been updated
IFD CARD_INTERNAL_LVOS
*
* Resource Vector Offsets
*
RES_RESERVED EQU 0
RES_USERDEF EQU LIB_BASE-(RES_RESERVED*LIB_VECTSIZE)
RES_NONSTD EQU RES_USERDEF
RESINIT MACRO ; [baseOffset ]
IFC '\1',''
COUNT_RES SET RES_USERDEF
ENDC
IFNC '\1',''
COUNT_RES SET \1
ENDC
ENDM
RESDEF MACRO ; library Function Symbol
\1 EQU COUNT_RES
COUNT_RES SET COUNT_RES-LIB_VECTSIZE
ENDM
RESINIT
RESDEF _LVOOwnCard
RESDEF _LVOReleaseCard
RESDEF _LVOGetCardMap
RESDEF _LVOBeginCardAccess
RESDEF _LVOEndCardAccess
RESDEF _LVOReadCardStatus
RESDEF _LVOCardResetRemove
RESDEF _LVOCardMiscControl
RESDEF _LVOCardAccessSpeed
RESDEF _LVOCardProgramVoltage
RESDEF _LVOCardResetCard
RESDEF _LVOCopyTuple
RESDEF _LVODeviceTuple
RESDEF _LVOIfAmigaXIP
RESDEF _LVOCardForceChange
RESDEF _LVOCardChangeCount
RESDEF _LVOCardInterface
ENDC ; CARD_INTERNAL_LVOS
ENDC ; RESOURCES_CARD_I